#【一】 响应数据格式
#【1】 以字符串形式返回数据 response.text
# 一般用于页面源码
"""
import requests
from fake_useragent import UserAgent

target_url = "https://www.sogou.com/web"
headers = {
    'User-Agent': UserAgent().random
}
params = {
    "query": "顺丰"
}
res = requests.get(url=target_url, headers=headers, params=params)
res.encoding = "utf-8"
print(res.text)
"""

# 【2】以二进制的形式返回数据 response.content
# 一般用于图片、word、pdf等文件类型数据
"""
import requests
from fake_useragent import UserAgent
target_url = "https://tingshu-1340480968.cos.ap-guangzhou.myqcloud.com/album/H8CqDB28qmyx75e2cfe8a63500bb5266f01ae9e0319c.png"
heads = {
    'User-Agent' : UserAgent().random
}
res = requests.get(url=target_url, headers=heads)
# print(res.text)
with open("1.png", "wb") as f:
    print(res.content)
    f.write(res.content)
"""

# 【3】以json格式返回数据 response.json()



# 【二】响应编码
# res.encoding = "utf-8"

# 【三】响应状态码
# res.status_code

# 【四】响应头
# res.headers

# 【五】 响应cookie
# res.cookies
# print(response.cookies.values())
# print(response.cookies.keys())
# print(response.cookies.items())
# print(response.cookies.get_dict())
# print(dict(response.cookies))


# 【六】请求定向URL
# 有时候会发现地址在浏览器可以正常访问 但是代码就不行
# 一种是你的请求中的请求头参数带的不对
# 二是请求的地址被中转了 访问百度; 中转到了 百度的安全验证页面
# res.url  最终访问的url
# res.request.url  发起请求的url

# 【七】当前请求的重定向的URL
# 可以查看当前请求是否发生了重定向
'''
import requests

# 定义目标地址
tag_url = "https://www.baidu.com/s?wd=%E5%91%A8%E6%9D%B0%E4%BC%A6"

# 发送请求，获取响应数据
response = requests.get(tag_url)

print(response.history)  # [&lt;Response [302]&gt;]
print(response.history[0].request.url)  # https://www.baidu.com/s?wd=%E5%91%A8%E6%9D%B0%E4%BC%A6
print(response.request.url)
'''

# 【八】迭代获取二进制数据 response.iter_content(chunk_size=1024)
# 适用于大文件的二进制数据 一次性接受太大 分批次接受
'''
# 第一步：导入模块
import requests
from fake_useragent import UserAgent

# 第二步 指定目标地址
target_url = "https://pic.netbian.com/uploads/allimg/241030/083910-1730248750fbc5.jpg"

# 第三步 模拟浏览器发起GET请求 , 获取响应对象
headers = {
    'User-Agent': UserAgent().random
}

response = requests.get(url=target_url, headers=headers)
for chunks in response.iter_content(chunk_size=1024):
    print(chunks)
    print("-------")
'''
